// Copyright 2010 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

/**
 * @fileoverview Externs for Google Apps Scripts.
 */

var Logger = {};
Logger.log = function(msg) {};

var Browser = {};
Browser.msgBox = function(msg) {};
Browser.inputBox = function(msg) {};

/**
 * Spreadsheet Range object, conflicts with w3c Range.
 */
Range.prototype.getValues = function() {};
Range.prototype.setBackgroundColor = function(color) {};
Range.prototype.setValues = function(values) {};

/** @constructor */
var Sheet = function() {};
Sheet.prototype.getLastColumn = function() {};
Sheet.prototype.getLastRow = function() {};
Sheet.prototype.getRange = function(row, column, opt_numRows, opt_numColums) {};
Sheet.prototype.setFrozenRows = function(rows) {};

/** @constructor */
var Spreadsheet = function() {};
Spreadsheet.prototype.addMenu = function(menuName, menuEntries) {};
Spreadsheet.prototype.getNumSheets = function() {};
Spreadsheet.prototype.getSheetByName = function(sheetName) {};
Spreadsheet.prototype.insertSheet = function(
    opt_name, opt_sheetIndex, opt_advancedArgs) {};

var SpreadsheetApp = {};
SpreadsheetApp.getActiveSpreadsheet = function() {};

/** @constructor */
var Session = function() {};
Session.prototype.getUser = function() {};

/** @constructor */
var User = function() {};
User.prototype.getUserLoginId = function() {};

/** @constructor */
var UrlFetchApp = function() {};
UrlFetchApp.prototype.fetch = function(url, opt_advancedArgs) {};

/** @constructor */
var HttpResponse = function() {};
HttpResponse.prototype.getContentText = function() {};
